/**
 * Copyright &copy; 2012-2016 <a href="https://github.com/thinkgem/jeesite">JeeSite</a> All rights reserved.
 */
package cn.hxcx.top.modules.dvc.entity;

import java.util.Date;

import org.hibernate.validator.constraints.Length;

import com.fasterxml.jackson.annotation.JsonFormat;

import cn.hxcx.top.common.persistence.DataEntity;
import cn.hxcx.top.modules.sys.entity.Office;
import cn.hxcx.top.modules.sys.entity.User;

/**
 * 设备报修Entity
 * @author DoubleX
 * @version 2019-07-13
 */
public class DeviceMana extends DataEntity<DeviceMana> {
	
	private static final long serialVersionUID = 1L;
	private String deviceId;		// 设备编号
	private User repairId;		// 维修人员
	private Date maintainDate;		// 维修时间
	private Date repairDate;		// 完成时间
	private String maintainDetail;		// 报修说明
	private String repairDetail;		// 修复反馈
	private String progress;		// 报修状态
	
	//查询属性
	private String deviceName;
	private Office deviceOffice;
	
	public DeviceMana() {
		super();
	}

	public DeviceMana(String id){
		super(id);
	}

	@Length(min=0, max=64, message="设备编号长度必须介于 0 和 64 之间")
	public String getDeviceId() {
		return deviceId;
	}

	public void setDeviceId(String deviceId) {
		this.deviceId = deviceId;
	}
	
	public User getRepairId() {
		return repairId;
	}

	public void setRepairId(User repairId) {
		this.repairId = repairId;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getMaintainDate() {
		return maintainDate;
	}

	public void setMaintainDate(Date maintainDate) {
		this.maintainDate = maintainDate;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getRepairDate() {
		return repairDate;
	}

	public void setRepairDate(Date repairDate) {
		this.repairDate = repairDate;
	}
	
	@Length(min=0, max=2000, message="报修说明文字长度必须介于 0 和 2000 之间")
	public String getMaintainDetail() {
		return maintainDetail;
	}

	public void setMaintainDetail(String maintainDetail) {
		this.maintainDetail = maintainDetail;
	}
	
	@Length(min=0, max=2000, message="修复反馈文字长度必须介于 0 和 2000 之间")
	public String getRepairDetail() {
		return repairDetail;
	}

	public void setRepairDetail(String repairDetail) {
		this.repairDetail = repairDetail;
	}
	
	public String getProgress() {
		return progress;
	}

	public void setProgress(String progress) {
		this.progress = progress;
	}

	public String getDeviceName() {
		return deviceName;
	}

	public void setDeviceName(String deviceName) {
		this.deviceName = deviceName;
	}

	public Office getDeviceOffice() {
		return deviceOffice;
	}

	public void setDeviceOffice(Office deviceOffice) {
		this.deviceOffice = deviceOffice;
	}
	
}